 #### Strict harmonic connection

Classical strict harmonic connection have to satisfy the following rules:

All upper voices should lead to the nearest tones (by direction opposite to bass voice).
• Advance by forth or fifth
Each of upper voices should advance maximally by third, (without changes in voices)
Each of upper voices should advance maximally by fourth (by direction opposite to bass voice).

These rules have been respected also in other styles, mostly in central voices of polyphony.

Optimal link-up is such a leading of voices, in which the total value of bindings impulse in particular linear voice bindings is maximum:
max imp(h(i,j))

This task is similar to minimization of interval sizes in matrix of connection:
min |h(i,j)|

E.g. matrix of the harmonic connection [e,g,c]->[g,b,d]:
```Intervals:                    Absolute values:
e   g   c |                  e   g   c |
------------+---             ------------+---
-2  -5  +2 | d                2   5   2 | d
-5  +4  -1 | b                5   4   1 | b
+3   0  -5 | g                3   0   5 | g
```

These possible connections exists: (Do you remember the combinatorial problem of placing queens to the chessboard?)

```  a/ * . .  b/ . . *  c/ * . . d/ . . * e/  . * .  f/ . * .
. * .     . * .     . . *    * . .     . . *     * . .
. . *     * . .     . * .    . * .     * . .     . . *
```

Sum of values corresponding to the marks (*):
a b c d e f
11 9 3 7 9 15

The sum is minimal in case of the variant c/:

```       e  ->  d
c  ->  b
g  ->  g
```

Other example; the connection [c,f,a]->[d,g,b]:
```    c   f   a |
------------+--
1   6   2 | b
5   2   2 | g
2   3   5 | d
```

Sum of values corresponding to the marks (*):
a b c d e f
8 6 6 10 10 16

The sum is minimal in case of the variant b/ and c/.

For more precise result we need the matrix of impulse values:

```    c   f   a |
------------+--
12   0   3 | b
0   3   3 | g
3   1   0 | d
```

Sum of impulse values corresponding to the marks (*):
a b c d e f
15 9 16 4 6 0
The sum is maximal in case of the variant c/.

```       c  ->  b
a  ->  g
f  ->  d
```

This connection is "correct" (with regard to classical rules):

```       c  ->  b
a  ->  g
f  ->  d
-----------
f  ->  g
```

Other examples:
• harmonic cadence Db-G-C (functions F-D-T):
```      g# -> g  -> g
f  -> d  -> e
c# -> b  -> c
```
• connection Bbmi-C (functions F-T); addition of tone d to the tonic is recommended
```             g
f   -> e
c#  -> d
a#  -> c
```

Harmonic bindings